home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
telecomm
/
datalink.zoo
/
ymg125
/
readme.1st
next >
Wrap
Text File
|
1990-08-08
|
10KB
|
213 lines
Ymodem-G (Batch)
Copyright © 1990
Zipline Software
Section 1 -- Protocol Limitations
Ymodem-G is one of the FASTEST protocols to date. It will out
transfer Xmodem, Ymodem, Ymodem Batch, Kermit, Sliding Windows Xmodem,
and even Zmodem. This alone makes it very useful. This protocol uses
a 16-bit CRC to make sure that your data gets transferred correctly,
but if an error should occur, the transfer ABORTS. Realistically,
this protocol should only be used with modems that have error correction
built-in (or used with a null modem).
Section 2 -- Program Limitations
Although the description of Ymodem-G does not force these limitations,
my program does. Most of them you will never encounter, but for sake of
completeness, I will try and discuss all the limitations.
- Do not attempt to transfer more than 2,147,483,647 bytes at a time.
(It is possible it can transfer double that, but I haven't tested
it, and I'm planning on it. Anyone that wants to try it, let me
know what the results are! At 19,200 baud, that will take a little
more than 12.9 days!)
- Ymodem-G automatically OVERWRITES any file that has the same name
of the file you are receiving.
- There is no check on the path that you give YMG, if it's really bad,
it MIGHT bomb the computer. (Don't try for example, d/ling to the
cartridge port!)
- YMG requires approximately another 17K above the program size for
its own use. Most of this space (16K) is used for the modem and
disk buffers. Floppy drives systems need these big of buffers,
and they aren't too terribly big, so I did not allow them to be
changed.
- This program is copyrighted and shareware. You may copy it, give
it away, put it up for download on BBS's, etc. You may not sell it.
AND, if you use this program for more than 3 weeks, send the
author (ME), a small fee to keep producing quality software like
this. My address is:
Robert McKee
395 S. Duane #301
Glen Ellyn, IL 60137
Section 3 -- Running ymodem-g
You may run YMG from inside any terminal that supports running
external programs. It may also be run from the desktop, if your terminal
does not support this function. When running YMG from the desktop, a box
will appear asking you to input the parameters for YMG.
Section 4 -- YMG Options
YMG now requires that all options be preceded by a -. Also, most
options should be followed by either a - or a +. Following an option
a minus (-) sign will disable or turn off that option. Following an
option with a plus (+) sign will enable or turn on that option. These
are the options that YMG will accept:
B - Will enable/disable a beep at the end of a transfer.
H - Instead of +/-, this option requires you to have following it
one of these 4 letters: N, S, H, or B. This option is for
setting flow control. N - None; S - Software; H - Hardware; or
B - Both. If this option is left out, flow control will not be
changed. (It will use whatever you have set currently).
K - Keep aborted files. If for some reason a transfer gets canceled,
(like user aborting) you may still want as much as the file as
you have received. This allows you to finish the download with
any protocol that has a resume function (like Z-modem).
EX:
YMG -B+ -HH -K+ C:\ This will tell YMG to use hardware flow control,
keep any aborted files, beep at the end of the
transfer, and download all the files to C:\.
YMG -B+ C:\ This will tell YMG to beep at the end of the
transfer, and download to C:\. It will use the
flow control that was being used before YMG
started.
YMG This wll use all the default options, and will
download to the current directory.
Section 5 -- Modification Log (AKA what I changed in this version)
Version .25 -- 05/??/90
- First release -- Written in 100% assembler to be small and fast
- No outputs really, just simple got block messages
Version .50 -- 06/07/90
- Added disk buffering (4K)
- Added new user interface
- Batch Status
- Total Files -- # of files sent
- Total Bytes -- # of bytes sent
- Avg Throughput -- CPS on whole transfer
- Elapsed Time -- Elapsed time on whole transfer
- File Status
- File Name -- Name of file in transit
- Total Bytes -- The total number of bytes in the file
- Avg Throughput -- CPS on current file
- Current Byte -- Total bytes in file received
- Elapsed Time -- Elapsed time on current file only
- Last Message -- Messages about transfer
- Last Block
- Size in Bytes -- The size of the last block sent
- Block Type -- What was contained in the last block
- Sent CRC's -- The CRC the sender gave us
- Calculated CRC -- The CRC we calculated it should be
Version .75 -- 06/19/90
- Fixed a minor bug when communicating with IBM systems that send
the extra info in the header block.
- Added File Progress added in both % and visual bar
- Added File Time Estimate which give an approximate amount of time
that the current file will take.
- Now gives error messages in English instead of result codes.
- Now allows a path to d/l to on the command line, and shows that path
in the Batch File Path line.
- More accurate CPS rates. Also, not quite as jumpy as before.
(The former routine was only accurate when alot of bytes had been
transfered).
- Can now timeout if the sender stops sending too long. Previously
would wait forever (or until UNDO was hit).
- Optimized my code greatly...Should hopefully be fast enough for any
baud rate.
- All times are now in tenths of a second instead of seconds.
- Now updates the screen every block *AND* during the block IF there
is no data to get.
- Now supports both color and monochrome monitors.
Version 1.0 -- 06/20/90
- Added a modem buffer (8K)
- Increased disk buffer to 8K
- Disabled flow control completely by using my own buffer and raising
the high water mark above the buffer length. So, now instead of a
lock-up when the buffer overflows, you only get an error message of
some sort.
- Added Files Window to show the last few files you've already got
including the one you've started to get as well.
Version 1.01 -- 06/22/90
- Fixed minor bugs with reseting the modem buffer to the defaults when
leaving YMG.
- Renamed YMG.PRG to YMG.TTP so a command line can be entered from the
desktop.
Version 1.02 -- 06/28/90
- Increased the amount of time needed for a timeout from 1 second to
5 seconds. This should be long enough for any reason.
Version 1.17 -- 07/18/90
- Added flow control options so YMG can use flow even if the terminal
program that calls it doesn't.
- Now reserves and protects its memory while running (It also releases
it when it terminates).
- Now uses BIOS calls for modem input. This should increase some
compatibility. (This also slows down YMG, so floppy drives may/
may not work again!)
- Optimized both speed and size alot. It's about as fast and small
as it's going to get. (About 250 bytes smaller now!)
Version 1.18 -- 07/30/90
- Changed the CRC routine. Instead of a pure calculation of the
16-bit CRC which was used prior to version 1.18, now YMG uses a
simple table look-up (with a small formula). The CRC routine now
takes approximately 70 cycles instead of 272. (about 4 times as
fast). Unfortunatel